package com.sikaryofficial.backend.domain.dto.req.points;

import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 积分规则入参
 * 
 * @author qinjinyuan
 * @date 2023-11-08
 */
@ApiModel(description = "积分规则入参")
@Getter
@Setter
@ToString
public class PointsRuleReq
{
    /**
     * 积分规则ID
     */
    @ApiModelProperty("积分规则ID")
    private Long pointsRuleId;

    /**
     * 规则编码
     */
    @ApiModelProperty(value = "规则编码", required = true)
    @NotBlank(message = "规则编码是空的")
    private String ruleCode;

    /**
     * 规则名称(备注)
     */
    @ApiModelProperty(value = "规则名称(备注)", required = true)
    @NotBlank(message = "规则名称(备注)是空的")
    private String ruleName;

    /**
     * 积分值
     */
    @ApiModelProperty(value = "积分值", required = true)
    @NotNull(message = "积分值是空的")
    private Integer pointsValue;

    /**
     * 可使用的累积总次数
     */
    @ApiModelProperty("可使用的累积总次数")
    private Integer maxTimes;

    /**
     * 每天次数
     */
    @ApiModelProperty(value = "每天次数", required = true)
    @NotNull(message = "每天次数是空的")
    private Integer timesPerDay;

    /**
     * 分类
     */
    @ApiModelProperty("分类")
    private String ruleCategory;

    /**
     * 分类描述
     */
    @ApiModelProperty("分类描述")
    private String ruleCategoryDesc;

}
